首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏前端二次元

    如何开发一个完整 Vite 插件

    一个简单插件示例Vite 插件与 Rollup 插件结构类似,为一个name和各种插件 Hook 对象:{ // 插件名称 name: 'vite-plugin-xxx', load(code ) { // 钩子逻辑 },}如果插件一个 npm 包,在package.json中包命名也推荐以vite-plugin开头一般情况下因为要考虑到外部传参,我们不会直接写一个对象,而是实现一个返回插件对象工厂函数 插件开发实战接下来我们进入插件开发实战环节中,在这个部分我们将一起编写两个 Vite 插件,分别是虚拟模块加载插件和Svgr 插件,你将学会从插件开发常见套路和各种开发技巧。 接下来让我们通过一些具体例子来实操一下,首先通过脚手架命令初始化一个react + ts项目:npm init vite然后通过pnpm i安装依赖,接着新建plugins目录,开始插件开发:// 下面是插件完整代码,你可以参考学习:import { Plugin } from 'vite';import * as fs from 'fs';import * as resolve from '

    2.2K40编辑于 2023-11-20
  • 来自专栏liulun

    如何开发Vite3插件构建Electron开发环境

    开发环境 Vite 插件 主进程代码写好之后,只有编译过之后才能被 Electron 加载,我们是 通过 Vite 插件形式来完成这个编译工作和加载工作 ,如下代码所示: //plugins\devPlugin.ts Vite 插件,在这个插件中我们注册了一个名为 configureServer 钩子,当 Vite 为我们启动 Http 服务时候,configureServer钩子会被执行。 接下去我们就介绍如何Vite 加载 Electron 内置模块和 Node.js 内置模块。 非但如此,我们还通过本讲内容向你介绍了 Vite 插件开发技巧和如何创建一个简单 Electron 应用等知识。 下一讲我们将在本节课基础上,进一步介绍如何使用 Vite 插件制作 Electron 应用安装包。

    2.2K20编辑于 2022-11-18
  • 来自专栏与前端沾边

    Vite 学习(四) - vite 插件开发预学习

    vite 插件需要兼容 rollup 和 esbuild 插件机制,虽然 vite 兼容大部分 rollup 插件,但不是所有钩子都支持,本小节介绍下 vite钩子及插件开发流程。 插件命名 对于 rollup 插件命名有两种,一种是 rollup-plugin-xxx,这种是社区通用,不是官方团队开发,一种是 @rollup/xxx,这种是官方插件,@rollup 代表组织 我们自己开发 vite 插件命名规则也保持 vite-plugin-xxx 格式。 ) // }); } 这里 vite 热更新存在一个小问题,就是热更新前逻辑会存在,我们需要手动关闭 // 这里 timer 会一直存在,热更新完后会存在多个 let timer = setInterval 中插件钩子和热更新操作做了介绍,和 rollup 开发不同及注意事项,下一节我们开始实现一个 vite 插件,具体了解每个钩子使用,如果有问题欢迎留言,谢谢阅读!

    2.4K40编辑于 2022-02-19
  • 来自专栏猫头虎博客专区

    如何开发一个Vue.js插件完整指南

    在这里,我们将深入探讨如何开发Vue.js插件,为Vue.js应用添加自定义功能。本文提供了详细步骤和示例代码,以帮助你轻松入门,同时优化你插件以获得更好可维护性和SEO表现。 在本文中,我们将从头开始,深入研究如何开发一个Vue.js插件,为Vue.js应用添加新特性和功能。 什么是Vue.js插件开发流程 了解开发Vue.js插件基本步骤,包括定义插件、添加全局或局部功能以及如何发布和分享你插件开发一个Vue.js插件 ️ 创建插件骨架 我们将从头开始创建一个简单Vue.js插件,演示如何定义插件结构和基本组件。 总结 通过本文,你已经学会了如何开发一个Vue.js插件,并了解了如何优化它以获得更好可维护性和SEO表现。

    39200编辑于 2024-04-09
  • 来自专栏Candy 的修仙秘籍

    Vite如何兼容 Rollup 插件生态

    由于生产环境打包,使用是 Rollup,Vite 需要保证,同一套 Vite 配置文件和源码,在开发环境和生产环境下表现是一致。 想要达到这个效果,只能是 Vite开发环境模拟 Rollup 行为 ,在生产环境打包时,将这部分替换成 Rollup 打包 Vite 兼容了什么 要讲 Vite 如何进行兼容之前,首先要搞清楚, Rollup 插件生态•Vite 可以做到部分替代 Rollup 这里强调一下,是部分兼容、部分替代,不是完全,因为 Vite 部分实现是与 Rollup 不同 如何兼容 Rollup 插件生态 感兴趣可以查看 Rollup 文档[3] 插件调度是如何实现插件容器要怎么使用? 这两个问题,其实是同一个问题,当需要调度时,就要使用插件容器了。 ,并介绍了,如何实现插件钩子调度。

    1.4K31编辑于 2022-07-18
  • 来自专栏前端进阶-詹躲躲

    Vite插件开发指南:轻松驾驭前端开发利器

    Vite 插件扩展了设计出色 Rollup 接口,带有一些 Vite 独有的配置项。因此,你只需要编写一个 Vite 插件,就可以同时为开发环境和生产环境工作。 对于 Vite 专属插件vite-plugin-* Vite 插件应该有一个vite-plugin- 前缀、语义清晰名称。 在 package.json 中包含 vite-plugin 关键字。 在插件文档增加一部分关于为什么本插件一个 Vite 专属插件详细说明(如,本插件使用了 Vite 特有的插件钩子)。 通用钩子 在开发中,Vite 开发服务器会创建一个插件容器来调用 Rollup 构建钩子,与 Rollup 如出一辙。 以下钩子在服务器关闭时被调用: buildEnd closeBundle 请注意 moduleParsed 钩子在开发中是 不会 被调用,因为 Vite 为了性能会避免完整 AST 解析。

    75210编辑于 2024-07-20
  • 来自专栏Node.js开发

    如何开发一个Vue插件

    今天带着大家开发个简单Vue消息框插件,需求如下: 请使用Vue实现一个自定义 alert 弹框组件。要求: 1、弹框组件可打开和关闭 。 熟悉Vue开发者,应该能够看出来这里需求其实可以拆分成两个,第一个需求是完成一个弹窗组件,并且这个组件能够打开和关闭,第二个需求是将这个组件扩展为插件。 下面就将考虑如何将这个组件扩展成插件,我们来看一下vue官方文档示例代码: // 调用 `MyPlugin.install(Vue)` Vue.use(MyPlugin) new Vue({ install方法,可以看出插件形式为一个对象,这个对象上有一个install方法,而install方法一个参数为Vue构造函数,由此得出我们封装插件逻辑应该都在install方法中。 $hide() },2000) } }) </script> </body> </html> 下面我们来总结一下开发Vue插件思路: 1、首先定义一个插件对象,对象必须有一个

    1.3K61发布于 2019-07-19
  • 来自专栏前端开发

    Vite 项目中如何去集成 Mock 环境 (插件vite-plugin-mock)

    我们看到官网来进行 Mock 环境集成: 传送门 安装插件 pnpm install -D vite-plugin-mock mockjs 配置 vite.config.ts import { defineConfig } from 'vite' import { createSvgIconsPlugin } from 'vite-plugin-svg-icons' // 引入 svg 图标所需要插件 import /src") // 相对路径别名配置,使用 @ 代替 src } }, // scss 全局变量一个配置 css: { preprocessorOptions 无非就是提供数据函数 + 对外暴露一个数组,数组中包含便是接口。 这里制作一个用户登录接口: const createUserList = () => { return [ { userId: 1,

    2.2K01编辑于 2024-05-24
  • 如何开发一个简单WordPress 插件

    WordPress 插件是扩展 WordPress 功能主要方式,开发一个插件不仅可以满足特定需求,还可以为其他用户提供便利。 本文将详细介绍 WordPress 插件开发各个方面,包括插件基本结构、开发流程、常用 API、最佳实践等,帮助开发者从零开始掌握 WordPress 插件开发。 第二部分:创建第一个 WordPress 插件2.1 环境准备在开始开发之前,确保你有一个运行中 WordPress 环境。 以下是一个示例,展示如何修改文章内容:function my_first_plugin_modify_content($content) { return $content . 社交媒体:通过社交媒体与用户互动,了解他们需求和建议。结论WordPress 插件开发一个充满挑战和乐趣过程。

    2.3K10编辑于 2024-11-12
  • 来自专栏胡哥有话说

    如何优雅开发一个Vue插件

    前言 vue.js和React.js是前端开发框架两架马车,React是扎哥 Facebook推广开源,Vue是尤雨溪(Evan You)个人主要进行开源维护,目前在GitHub上Vuestar 在如此丰富Vue社区生态中,有很多像vue-router、vuex、element-ui等优秀Vue插件、Vue UI组件框架,给开发者提供了更多、更丰富、更方便Vue能力。 问题来了 如何开发自己Vue插件呢? 如何结合公司项目,搭建可复用、易维护UI组件库呢? 实现; 一个库,提供自己API,提供以上一个或多个功能 二、开发Vue插件 Vue插件需要暴露一个install方法,该方法第一个参数是Vue构造器,第二个参数是可选配置项对象 /** * 以下代码基于 cli生成项目,亦可使用其他方式,解析Vue即可 * 考虑插件功能完整性与独立性,可设置独立文件目录,以供移植或发布npm包 * 以开发常用功能Loading组件为例 * / /** * 目录结构

    94840发布于 2019-07-25
  • 来自专栏小鑫同学编程历险记

    开发H5都会喜欢这个Vite插件

    ~ 在开发小程序时候经常会通过手机扫描小程序开发工具生成二维码来快速在手机上打开正在开发小程序进行功能调试,但是在H5开发时却还是通过聊天软件来粘贴地址,费时费力,所以我将编写一个Vite插件来支持终端显示二维码功能 Vite插件开发辅助 开发Vite插件建议使用开源项目generator-vite-plugin,可以通过简单了两步操作实现一个Vite插件开发基本环境,还贴心配置了调试脚本方便第一次开发插件时手忙脚乱 IP访问H5页面,Local地址无效; Vite默认启动不提供Network地址,需要增加--host 参数,插件中默认已配置; 2.1 获取Vite启动后分配URLs: vite命令执行后会在终端启动一个开发服务器 如何终端输出信息: 上一步知道了urls如何获取,这一步要解决就是vite到底是如何输出urls到终端? ,期间翻阅了Vite插件开发文档和源码,分别找到了开发服务器相关钩子函数拿到了Vite打印urls信息,并通过扩展printUrls 函数在保证原始逻辑正常执行情况下增加二维码输出功能。

    68630编辑于 2022-12-26
  • 来自专栏码农小余

    PluginContainer,管理你 vite 插件

    Vite 插件与 rollup 插件又有什么关系?本文就来揭晓这些问题答案。 按照惯例,我们先举一个插件最小 DEMO[1]: // vite.config.ts import { defineConfig } from 'vite' import { VitePluginBaz PluginContext 是从 rollup 包导入。所以 vite 插件跟 rollup 插件基本一致,但也不是完全兼容。 这些钩子实现大部分都依赖于 rollup 插件钩子实现,现在就通过分析钩子源码,具体看看 Vite如何利用 Rollup 能力。 然后我们通过深入插件容器中一个 API,知道了插件容器就是在管理 config.plugins,执行到对应钩子时,就会去遍历 config.plugins 列表依次调用钩子函数,函数执行上下文都基于

    1.4K10编辑于 2022-06-16
  • 来自专栏优惠券

    如何用PHP开发一个完整网站?

    作为世界上最好语言PHP,在2018年发展依然一路凯歌。PHP语言受到众多企业家们喜爱。众所周知,PHP技术主要用于一个网站后台开发。那么如何用PHP开发一个完整网站呢? 本文小编与你们分享PHP开发教程之如何用PHP开发一个完整网站。 PHP开发一个完整网站: PHP支持系统平台包括UNIX、UNIX类操作系统(如Linux)以及Windows操作系统。 该系统集成程度很高,操作简单,拿到建站系统后,只需一个小时就可以快速搭建一个成熟众包网站!既为创业者节约了时间和精力,又无需很多资金!成本低,效率高,非常适合想要用PHP开发网站的人! 丰富功能插件:丰富功能插件,满足您个性需求,为你提供功能齐全在线交易服务平台,拓宽发展空间。

    3.9K00发布于 2018-11-27
  • 来自专栏开源

    如何开发一个导入导出插件

    开发过程中,或多或少都会遇到数据格式转换问题,如果只是简单数据,那自然用什么方式都可以,如果遇到数据非常多、层级复杂、关联性强数据,则需要摸索出一套合适方法,本文会介绍两种比较可行转换模型, 作为例子,我们有一份自己系统所属接口数据,需要将其转换成 postman 平台数据,本文将探讨如何处理各种场景。 同理地,子函数也可以在任意一个层级写入目标数据。由于是链式语法,在处理链路中,可以比较灵活地插入子函数、调整顺序,比如在任意一个子函数后面插入log函数进行打印,这一特点在开发和调试中尤其方便。 结尾本文大致由浅及深地介绍了两种处理模型,应该足够应付大部分数据结构转译场景。当实现了整个算法后,接下来要做事情就只是按照平台插件规则,将其包装成一个合格插件。 感兴趣可以关注:Eoapi插件仓库感谢阅读本文,希望你从此也能够轻松处理数据结构转换。

    57430编辑于 2022-11-25
  • 来自专栏无道编程

    vite按需引入element-plus一个插件搞定

    前言 按照 element-plus 文档所言,是使用vite-plugin-style-import 如下: import { defineConfig } from 'vite' import vue from '@vitejs/plugin-vue' import styleImport from 'vite-plugin-style-import' export default defineConfig ,这是antfu编写一个插件,antfu可是一个大佬,有空建议去他仓库看看。 安装 yarn add element-plus -S yarn add sass -D yarn add vite-plugin-components -D 配置vite.config.ts import , + }), ], }); 修改main.ts,添加: import "element-plus/packages/theme-chalk/src/base.scss"; 在任意文件,运行一个

    3K20发布于 2021-08-12
  • 来自专栏flytam之深入前端技术栈

    如何使用 React、TypeScript、TailwindCSS 和 Vite 创建 Chrome 插件

    创建一个 Chrome 插件一个有趣项目,特别是当结合使用强大工具如 React、TypeScript、TailwindCSS 和 Vite 时 在这篇文章中,我们将逐步引导完成整个过程,了解如何在 无论是经验丰富开发者还是刚刚起步,这篇指南都将帮助轻松应对扩展开发复杂性。 创建一个 React Chrome 插件 是否曾想过创建自己 Chrome 插件? 让我们使用现代 Web 技术来创建一个 Chrome 插件:React 用于构建用户界面,TypeScript 提供类型安全,TailwindCSS 用于样式设计,Vite 提供快速开发体验。 Chrome 插件 安装 CRXJS Vite 插件 为了能够打包一个 Chrome 插件,我们需要一个 Vite 插件,它会使我们工作更轻松,处理诸如 HMR 和静态资源导入等事情。 结论 使用 React、TypeScript、TailwindCSS 和 Vite 创建一个 Chrome 插件是提升开发技能好方法,并通过尝试新功能和技术不断学习。

    3.3K10编辑于 2024-09-24
  • 来自专栏HarmonyOS点石成金

    鸿蒙开发如何实现一个hvigor插件

    插件,我们可以看到,它自动化执行了某些特定任务,减少了我们手动干预,确保了构建过程一致可靠性,可以说,在实际开发中,极大提高了我们开发效率,今天,我们这篇文章,就一起实现一个hvigor插件 ,而typescript项目则需要发布后才能使用,如果你想开发插件,让更多项目或更多开发者使用,推荐typescript项目形式,就比如上篇文章组件化运行插件,使用者只需简单配置即可使用,如果仅仅是单一项目使用 { return { pluginId: 'myPlugin', apply(node: HvigorNode) { // 插件主体 console.log('我是一个简单插件 console.log('我是一个简单插件'); } }}以上步骤完成之后,在我们编译或者运行模块时候,就会先去执行我们插件主体:比如这里,我们可以做很多动作,如代码检查, /src/plugin/my-plugin';第三步:发布插件开发插件如何让他人进行使用,那么就需要发布到npm平台,其发布方式,也是遵循npm发布规范,这里也简单总结一下,首先配置pm镜像仓库地址

    35310编辑于 2025-06-28
  • 来自专栏四楼没电梯

    快速上手:如何开发一个实用 Edge 插件

    在日常浏览网页时,背景图片能够显著提升网页视觉体验。如果你也想为自己浏览器页面添加个性化背景图片,并希望背景图片设置能够持久保存,本文将介绍如何通过开发一个自定义Edge插件来实现这一功能。 开发Edge插件核心技术栈包括JavaScript、HTML和CSS。 在本示例中,我们将开发一个简单插件,通过它为网页添加自定义背景图片,并将背景图片URL保存在插件选项页中,以便下次访问时能够自动加载。 以下是发布插件基本流程: 1. 注册开发者账号 访问Microsoft Edge Add-ons商店,并注册一个开发者账号。 2. 四、总结 通过这篇文章,我们创建了一个自定义背景图片Edge插件,并学习了如何将背景设置保存在插件存储中,以便长期使用。我们还介绍了插件发布流程,让你可以将插件分享给更多用户。

    2.4K10编辑于 2024-12-20
  • 来自专栏程序那些事儿

    如何快速地开发一个chrome扩展插件

    说到现如今最流行浏览器,那么一定是chrome,无论是它速度,还是它稳定性,还是它简洁,都让人爱不释手,此外,更多的人选择它理由是它有着丰富扩展插件,这些扩展插件让你浏览器变得异常强大,让你浏览器不仅仅是浏览器 js,css,html文件,可以说你只要会写前端,那么开发一个chrome扩展插件将会非常容易。 /icon38.png" }, "default_title": "Google Mail", "default_popup": "popup.html" } chrome被开发人员所喜爱一个原因是它提供了非常强大调试工具栏 api,正是有了这些api,才诞生了几十万扩展插件。 ,用到知识都是基础js,html,css,我们只需要知道一些和浏览器交互属性和操作api,就可以开发一个属于自己浏览器扩展。

    1.1K20编辑于 2023-07-24
  • 来自专栏祝威廉

    如何基于web-platform开发一个插件

    前文我们假想我们有足够多插件可以选择,那么我们可能无需开发,便可以动态构建出一个应用来。如果现有的插件无法满足需求,那么意味着我们需要二次开发一个插件或者新开发插件。 今日目标 开发一个可以上传和下载jar包应用。上传需要用户校验,下载不需要。 为了完成这个功能,我们首先应该思考 哪些现成插件可以满足部分功能? 有插件可以做二次开发么? 现在没有一个现成插件可以完成上传下载jar包,所以我们需要开发一个插件完成这部分功能。 开发总体步骤 大致要做如下几个工作: 设计库表 开发项目 发布插件 库表 因为我们会依赖user-system插件,用户相关工作我们不需要做了。 action=downloadPlugin&pluginName=user-system&version=1.0.0 web-platform 提供额外功能 我们现在看看web-platform如何进一步提高你开发效率

    41610编辑于 2022-01-07
领券